package com.zhentao.device.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhentao.pojo.WaterQualityAnomaly;
import java.util.List;
import java.util.Map;

/**
* @author DELL
* @description 针对表【water_quality_anomaly(水质告警数据表)】的数据库操作Service
* @createDate 2025-09-23 10:40:59
*/
public interface WaterQualityAnomalyService extends IService<WaterQualityAnomaly> {

    /**
     * 生成新告警
     */
    void generateAlert(String indicator, Double currentValue, String normalRange, 
                      String deviceId, String deviceName, Long dataId);

    /**
     * 更新告警状态
     */
    boolean updateAlertStatus(Long alertId, Integer status, String handlerId);

    /**
     * 批量处理告警
     */
    int batchHandleAlerts(List<Long> alertIds, Integer status, String handlerId);

    /**
     * 根据状态获取告警列表
     */
    List<WaterQualityAnomaly> getAlertsByStatus(Integer status);

    /**
     * 获取告警统计信息
     */
    Map<String, Integer> getAlertStats();

    /**
     * 根据设备ID获取告警
     */
    List<WaterQualityAnomaly> getAlertsByDeviceId(String deviceId);

    /**
     * 根据指标获取告警
     */
    List<WaterQualityAnomaly> getAlertsByIndicator(String indicator);
}
